class Solution {
public:
    /**
     * max increasing subsequence
     * @param arr int整型vector the array
     * @return int整型
     */
    /*
    先排序，1 1 2 3 4  100
    如果当前元素比前一个元素大1，说明可以构成连续序列，count++;
    如果相等就跳过
    否则就不构成连续序列，count重置1
    */
    int MLS(vector<int>& arr) {
        // write code here
        if(arr.size()==0)
            return 0;
        sort(arr.begin(), arr.end());
        int count=1;
        int longest=1;
        for(int i=1;i<arr.size();i++)
        {
            if(arr[i]==arr[i-1]) //相邻的两个数相等
                continue;
            if((arr[i]-arr[i-1])==1) count++;
            else
            {
                count=1;
            }
            longest=max(longest,count);
        }
        return longest;
    }
};